﻿using System;
using System.Collections.Generic;
using System.Text;

namespace TarreOA.TarreOAModels {
    public class Flow_WorkProcess {
        private Flow_NewWork base_newWork;
        private int step_id;
        private User prc_user;
        private DateTime start_time;
        private DateTime finish_time;
        private int prc_state;
        private int prc_userPop;
        private string prc_user_loginName;
        private string prc_user_username;
        private string step_name;

        /// <summary>
        /// 获取或设置当前步骤的名称
        /// </summary>
        public string Step_name {
            get { return step_name; }
            set { step_name = value; }
        }

        /// <summary>
        /// 获取或设置此过程的经办人员用户名
        /// </summary>
        public string Prc_user_username {
            get { return prc_user_username; }
            set { prc_user_username = value; }
        }

        /// <summary>
        /// 获取或设置此过程的经办人员登录名
        /// </summary>
        public string Prc_user_loginName {
            get { return prc_user_loginName; }
            set { prc_user_loginName = value; }
        }

        /// <summary>
        /// 获取或设置此过程的经办人受理权限(0表示此人为经办人，1表示此人为主办人)
        /// </summary>
        public int Prc_userPop {
            get { return prc_userPop; }
            set { prc_userPop = value; }
        }

        /// <summary>
        /// 获取或设置此过程的办理状态(1表示未阅读，2表示已经阅读，3表示此过程已将转交下步)
        /// </summary>
        public int Prc_state {
            get { return prc_state; }
            set { prc_state = value; }
        }

        /// <summary>
        /// 获取或设置此过程的转交时间(提交到下一步骤的时间)
        /// 主办人员填写相关事宜，然后转交下步的时间
        /// </summary>
        public DateTime Finish_time {
            get { return finish_time; }
            set { finish_time = value; }
        }

        /// <summary>
        /// 获取或设置此过程的办理时间(第一次阅读时间)，经办人员第一次阅读此事宜的时间,为空表示经办人员未接手
        /// </summary>
        public DateTime Start_time {
            get { return start_time; }
            set { start_time = value; }
        }

        /// <summary>
        /// 获取或设置此过程的经办人员信息，有多个经办人员的时候就有多条记录
        /// </summary>
        public User Prc_user {
            get { return prc_user; }
            set { prc_user = value; }
        }

        /// <summary>
        /// 获取或设置当前流程步骤编号，记录当前办理过程的步骤.(当新建工作时插入步骤1的相关信息，转交下一步时再插入步骤2的相关信息，以此类推)
        /// </summary>
        public int Step_id {
            get { return step_id; }
            set { step_id = value; }
        }

        /// <summary>
        /// 获取或设置该办理过程所属的公作的内容信息(class:Flow_NewWork)
        /// </summary>
        public Flow_NewWork Base_newWork {
            get { return base_newWork; }
            set { base_newWork = value; }
        }
    }
}
